home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Cream of the Crop 1
/
Cream of the Crop 1.iso
/
PROGRAM
/
MISCPAS.ARJ
/
RENAME.PAS
< prev
next >
Wrap
Pascal/Delphi Source File
|
1992-06-23
|
2KB
|
58 lines
program rename; {rename files or directories}
type
regset = record
case integer of
1: (
ax,bx,cx,dx,bp,si,di,ds,es,flags : integer);
2: (
al,ah,bl,bh,cl,ch,dl,dh : byte);
end;
var
params : regset;
fcb : array[-7..37] of byte; {Extended FCB}
file_name : string[20];
i : integer;
begin
fcb[-7] := $FF; {setup Extended FCB}
fcb[-1] := $16; {match on anything}
with params do begin
write('Old File Name: ');
readln(file_name);
file_name := file_name + ' '; {terminate to stop parse}
ax := $2901; {parse the filename}
ds := seg(file_name[1]);
si := ofs(file_name[1]);
es := seg(fcb[0]);
di := ofs(fcb[0]);
msdos(params);
if al <> 0 then begin
writeln(^G'invalid file name');
halt;
end;
write('New File Name: ');
readln(file_name);
file_name := file_name + ' ';
ax := $2903; {parse the file name}
ds := seg(file_name[1]);
si := ofs(file_name[1]);
es := seg(fcb[$10]);
di := ofs(fcb[$10]);
msdos(params);
if al <> 0 then begin
writeln(^G'invalid file name');
halt;
end;
ah := $17; {rename call}
ds := seg(fcb[-7]); {use the Extended FCB}
dx := ofs(fcb[-7]);
msdos(params);
if al <> 0 then writeln(^G'Rename Unsuccessful!!')
else writeln('Done');
end;
end.